#include<iostream>
#include<string>
using namespace std;
//左值 能够通过指针定位的值 而右值为只读的变量
//引用只是别名，不占用内存空间
//不能通过左值来初始化右值引用
// int &a = b;ok
// int &&a = b;X
// int &&a = 5;ok

int main()
{
    //左值
    int num = 8;
    //左值引用
    int &a = num;//a不占用额外的内存地址
    //右值
    //右值应用
    int &&b = 5;
    //常量左至引用
    const int &c = num;
    //常量的右值引用
    //const int &&d = b;X
    //int &&f = b;X  右值引用只能通过右值来初始化，不能使用右值引用来初始化右值引用
    
    return 0;
}